<?php
/**
 * Created by PhpStorm.
 * User: zhangrongxiang
 * Date: 2018/1/24
 * Time: 下午9:32
 */

//https://secure.php.net/types.comparisons

//Comparisons of $x with PHP functions
/**Expression            gettype()  empty() is_null()   isset() boolean : if($x)  */
/**-------------------------------------------------------------------------------*/
//$x = "";	             string	    TRUE	FALSE	    TRUE	FALSE
//$x = null;             NULL	    TRUE	TRUE	    FALSE	FALSE
//var $x;   	         NULL	    TRUE	TRUE	    FALSE	FALSE
//$x is undefined	     NULL	    TRUE	TRUE	    FALSE	FALSE
//$x = array();	         array	    TRUE	FALSE	    TRUE	FALSE
//$x = array('a', 'b');	 array	    FALSE	FALSE	    TRUE	TRUE
//$x = false;	         boolean	TRUE	FALSE	    TRUE	FALSE
//$x = true;	         boolean	FALSE	FALSE	    TRUE	TRUE
//$x = 1;                integer	FALSE	FALSE	    TRUE	TRUE
//$x = 42;	             integer	FALSE	FALSE	    TRUE	TRUE
//$x = 0;	             integer	TRUE	FALSE	    TRUE	FALSE
//$x = -1;	             integer	FALSE	FALSE	    TRUE	TRUE
//$x = "1";	             string 	FALSE	FALSE	    TRUE	TRUE
//$x = "0";	             string	    TRUE	FALSE	    TRUE	FALSE
//$x = "-1";	         string	    FALSE	FALSE	    TRUE	TRUE
//$x = "php";	         string	    FALSE	FALSE	    TRUE	TRUE
//$x = "true";	         string	    FALSE	FALSE	    TRUE	TRUE
//$x = "false";	         string	    FALSE	FALSE	    TRUE	TRUE


/**                                Loose comparisons with ==                                            */
/**         TRUE    FALSE   1       0       -1     "1"      "0"    "-1"     NULL    array() "php"   ""  */
//TRUE	    TRUE	FALSE	TRUE	FALSE	TRUE	TRUE	FALSE	TRUE	FALSE	FALSE	TRUE	FALSE
//FALSE	    FALSE	TRUE	FALSE	TRUE	FALSE	FALSE	TRUE	FALSE	TRUE	TRUE	FALSE	TRUE
//1	        TRUE	FALSE	TRUE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE
//0	        FALSE	TRUE	FALSE	TRUE	FALSE	FALSE	TRUE	FALSE	TRUE	FALSE	TRUE	TRUE
//-1	    TRUE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE
//"1"	    TRUE	FALSE	TRUE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE
//"0"	    FALSE	TRUE	FALSE	TRUE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE
//"-1"	    TRUE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE
//NULL	    FALSE	TRUE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	TRUE	TRUE	FALSE	TRUE
//array()	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	TRUE	TRUE	FALSE	FALSE
//"php"	    TRUE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	TRUE	FALSE
//""	    FALSE	TRUE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	TRUE


/**                                 Strict comparisons with ===                                         */
/**         TRUE    FALSE   1       0      -1      "1"      "0"     "-1"    NULL    array() "php"   ""  */
//TRUE	    TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE
//FALSE	    FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE
//1	        FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE
//0	        FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE
//-1	    FALSE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE
//"1"	    FALSE	FALSE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE
//"0"	    FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE	FALSE
//"-1"	    FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE	FALSE
//NULL	    FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE	FALSE
//array()	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	TRUE	FALSE	FALSE
//"php"	    FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	TRUE	FALSE
//""	    FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	FALSE	TRUE
